﻿<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
                    xmlns:Actions="clr-namespace:FR.SAFTAnalyser.Styles.Actions">
    
    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="Resources.xaml"/>
    </ResourceDictionary.MergedDictionaries>
    
    <Style TargetType="{x:Type TabControl}" x:Key="StandardTabControl">
        <Style.Resources>
            <Style TargetType="{x:Type TabItem}">
                <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
                <Setter Property="Background" Value="Transparent"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type TabItem}">
                            <Grid Background="{TemplateBinding Background}" SnapsToDevicePixels="true" Height="23">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="Auto"/>
                                    <ColumnDefinition Width="25"/>
                                </Grid.ColumnDefinitions>
                                <ContentPresenter ContentSource="Header" Margin="10,0,10,0" HorizontalAlignment="Center" VerticalAlignment="Center">
                                    <ContentPresenter.Resources>
                                        <Style TargetType="TextBlock">
                                            <Setter Property="Foreground" Value="{StaticResource Foreground}"/>
                                        </Style>
                                    </ContentPresenter.Resources>
                                </ContentPresenter>
                                <!--<Button Grid.Column="1" Height="15" Width="15" HorizontalAlignment="Center" VerticalAlignment="Center">
                                    <i:Interaction.Triggers>
                                        <i:EventTrigger EventName="Click">
                                            <Actions:CloseTabItemAction TabItem="{Binding RelativeSource={RelativeSource AncestorType=TabItem}}" 
                                                                        TabControl="{Binding RelativeSource={RelativeSource AncestorType=TabControl}}"/>
                                        </i:EventTrigger>
                                    </i:Interaction.Triggers>
                                    <Button.Style>
                                        <Style TargetType="{x:Type Button}">
                                            <Setter Property="Background" Value="Transparent"/>
                                            <Setter Property="Cursor" Value="Hand"/>
                                            <Setter Property="Focusable" Value="False"/>
                                            <Setter Property="Template">
                                                <Setter.Value>
                                                    <ControlTemplate TargetType="{x:Type Button}">
                                                        <Grid Background="{TemplateBinding Background}" HorizontalAlignment="Right">
                                                            <Path x:Name="ButtonPath" 
                                                                Margin="2"
                                                                Data="M0,0 L1,1 M0,1 L1,0"
                                                                Stroke="{StaticResource CloseButtonStroke}" 
                                                                StrokeThickness="2"
                                                                StrokeStartLineCap="Flat"
                                                                StrokeEndLineCap="Flat"
                                                                Stretch="Uniform"
                                                                VerticalAlignment="Center"
                                                                HorizontalAlignment="Right"/>
                                                        </Grid>
                                                        <ControlTemplate.Triggers>
                                                            <MultiDataTrigger>
                                                                <MultiDataTrigger.Conditions>
                                                                    <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=TabItem}}" Value="false"/>
                                                                    <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=TabItem}}" Value="false"/>
                                                                </MultiDataTrigger.Conditions>
                                                                <MultiDataTrigger.Setters>
                                                                    <Setter Property="Visibility" Value="Hidden"/>
                                                                </MultiDataTrigger.Setters>
                                                            </MultiDataTrigger>
                                                            <Trigger Property="IsEnabled" Value="False">
                                                                <Setter Property="Visibility" Value="Hidden"/>
                                                            </Trigger>
                                                            <Trigger Property="IsMouseOver" Value="True">
                                                                <Setter Property="Background" Value="{StaticResource CloseButtonBackgroundHighlighted}" />
                                                                <Setter TargetName="ButtonPath" Property="Stroke" Value="{StaticResource CloseButtonStrokeHighlighted}"/>
                                                            </Trigger>
                                                            <Trigger Property="IsPressed" Value="true">
                                                                <Setter Property="Background" Value="{StaticResource CloseButtonBackgroundPressed}"/>
                                                                <Setter TargetName="ButtonPath" Property="Stroke" Value="{StaticResource CloseButtonStroke}"/>
                                                                <Setter TargetName="ButtonPath" Property="Margin" Value="2.5,2.5,1.5,1.5" />
                                                            </Trigger>
                                                        </ControlTemplate.Triggers>
                                                    </ControlTemplate>
                                                </Setter.Value>
                                            </Setter>
                                        </Style>
                                    </Button.Style>
                                </Button>-->
                            </Grid>
                            <ControlTemplate.Triggers>
                                <Trigger Property="IsSelected" Value="false">
                                    <Setter Property="Background" Value="Transparent"/>
                                </Trigger>
                                <Trigger Property="IsMouseOver" Value="true">
                                    <Setter Property="Background" Value="{StaticResource BorderBrushSelected}"/>
                                </Trigger>
                                <Trigger Property="IsSelected" Value="true">
                                    <Setter Property="Background" Value="{StaticResource BackgroundSelected}"/>
                                </Trigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </Style.Resources>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type TabControl}">
                    <Grid KeyboardNavigation.TabNavigation="Local">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="*"/>
                        </Grid.RowDefinitions>
                        <Border Background="Transparent" BorderThickness="0,0,0,3" 
                                BorderBrush="{StaticResource BackgroundSelected}">
                            <TabPanel Name="HeaderPanel" Panel.ZIndex="1" Margin="0,0,4,-1" 
                                IsItemsHost="True" KeyboardNavigation.TabIndex="1"/>
                        </Border>
                        <Border Grid.Row="1" Background="{StaticResource Background}"/>
                        <ContentPresenter Grid.Row="1" Name="PART_SelectedContentHost" 
                                          ContentSource="SelectedContent"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>